package com.dao;

import entity.EmpEntity;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.Set;

public interface EmpDao {
    // 修改方法
    void update(EmpEntity entity);

    /**
     * @Param 是 mybatis 提供的，用来显示指定参数的名字
     */
    // 查询方法（根据性别和工资进行查询）
    List<EmpEntity> findEmpByGenderAndSalary(@Param("gender") String gender, @Param("salary") BigDecimal salary);

    // 查询方法2（根据性别和工资进行查询）
    List<EmpEntity> findEmpByGenderAndSalary2(@Param("gender") String gender, @Param("salary") BigDecimal salary);

    // 查询方法3（根据性别和工资进行查询）
    List<EmpEntity> findEmpByGenderAndSalary3(@Param("gender") String gender, @Param("salary") BigDecimal salary);

    // 查询方法4（根据性别和工资进行查询）
    List<EmpEntity> findEmpByGenderAndSalary4(@Param("gender") String gender, @Param("salary") BigDecimal salary);

    // 根据编号查询信息方法（List 集合）
    List<EmpEntity> findEmpByIds(List<Integer> ids);

    // 根据编号查询信息方法（Integer[] 数组）
    List<EmpEntity> findEmpByIds2(Integer[] ids);

    // 根据编号查询信息方法（Map 集合）
    List<EmpEntity> findEmpByIds3(Map<String, Integer> ids);

    // 根据编号查询信息方法（Map 集合）
    List<EmpEntity> findEmpByIds4(Map<String, Integer> ids, String b);

    // 根据编号按查询信息方法（Set 集合）
    List<EmpEntity> findEmpByIds5(Set<Integer> ids);
}
